package com.eui.demo.designwizard
{
	import com.eui.demo.designwizard.step.KeyPointView;
	import com.eui.demo.designwizard.step.NodeClassDiagramView;
	import com.eui.demo.designwizard.step.ObjectDiagramView;
	import com.eui.demo.designwizard.step.WizardClassDiagramView;
	import com.eui.arch.util.PMContext;
	import com.eui.arch.wizard.model.WizardPM;
	
	import flash.utils.getQualifiedClassName;
	
	import mx.rpc.IResponder;

	[Bindable]
	public class DesignWizardPM extends WizardPM
	{
		public static const MANAGED_PM_ID:String=getQualifiedClassName(DesignWizardPM);

		public static function getInstance():DesignWizardPM
		{
			return PMContext.getInstance().getPM(MANAGED_PM_ID) as DesignWizardPM;
		}

		public function DesignWizardPM()
		{
			super();
		}

		override public function pmId():String
		{
			return MANAGED_PM_ID;
		}

		override protected function initSteps():void
		{
			addStep("Key point", "1 Key point", null, KeyPointView, false, false, false);
			addStep("Object diagram", "2 Object diagram", null, ObjectDiagramView, false, false, false);
			addStep("Node class diagram", "3 Node class diagram", null, NodeClassDiagramView, false, false, false);
			addStep("Wizard class diagram", "4 Wizard class diagram", null, WizardClassDiagramView, false, false, false);
		}

		override public function loadWizardData(data:Object, responder:IResponder):void
		{
			responder.result(null);
		}
	}
}